package cn.topevery.garden.entity.po.event;

import cn.topevery.garden.framework.base.BaseEntity;
import hw.topevery.framework.annotation.DbTable;
import hw.topevery.framework.annotation.DbTableField;
import hw.topevery.framework.enums.DbTypeEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.time.LocalDateTime;

/**
 * 案件延时申请表
 *
 * @author code-generate
 * @date 2020-12-01
 */
@ApiModel(value = "EventDelayApply", description = "案件延时申请表")
@DbTable(tableName = "t_event_delay_apply")
public class EventDelayApply extends BaseEntity {
        /** 申请延时ID */
    @ApiModelProperty(value = "申请延时ID")
    @DbTableField(columnName = "c_delay_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String delayId;

    /** 案件ID */
    @ApiModelProperty(value = "案件ID")
    @DbTableField(columnName = "c_evt_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String evtId;

    /** 当前流程ID */
    @ApiModelProperty(value = "当前流程ID")
    @DbTableField(columnName = "c_act_inst_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String actInstId;

    /** 申请时间 */
    @ApiModelProperty(value = "申请时间")
    @DbTableField(columnName = "c_req_date", dbType = DbTypeEnum.TIMESTAMP, isKey = false, canUpdate = true, canInsert = true)
    public LocalDateTime reqDate;

    /** 申请人员ID */
    @ApiModelProperty(value = "申请人员ID")
    @DbTableField(columnName = "c_req_user_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String reqUserId;

    /** 申请人员部门ID */
    @ApiModelProperty(value = "申请人员部门ID")
    @DbTableField(columnName = "c_req_user_dep_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String reqUserDepId;

    /** 暂时放的冗余字段:0一般性处理，1特殊性处理，2工程性处理 ，20 自行估算时限，30 无时限 */
    @ApiModelProperty(value = "暂时放的冗余字段:0一般性处理，1特殊性处理，2工程性处理 ，20 自行估算时限，30 无时限")
    @DbTableField(columnName = "c_req_type", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer reqType;

    /** 案件处理时限 */
    @ApiModelProperty(value = "案件处理时限")
    @DbTableField(columnName = "c_req_limit", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer reqLimit;

    /** 案件原始处理时限 */
    @ApiModelProperty(value = "案件原始处理时限")
    @DbTableField(columnName = "c_old_limit", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer oldLimit;

    /** 案件新处理时限 */
    @ApiModelProperty(value = "案件新处理时限")
    @DbTableField(columnName = "c_new_limit", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer newLimit;

    /** 案件处理时限预留 */
    @ApiModelProperty(value = "案件处理时限预留")
    @DbTableField(columnName = "c_self_def_limit", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer selfDefLimit;

    /** 申请原因 */
    @ApiModelProperty(value = "申请原因")
    @DbTableField(columnName = "c_req_reason", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String reqReason;

    /** 暂时放的冗余字段:这里应该是 派发案件至申请人所在专业部门的 派遣员角色 */
    @ApiModelProperty(value = "暂时放的冗余字段:这里应该是 派发案件至申请人所在专业部门的 派遣员角色")
    @DbTableField(columnName = "c_audit_role_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String auditRoleId;

    /** 审核日期 */
    @ApiModelProperty(value = "审核日期")
    @DbTableField(columnName = "c_audit_date", dbType = DbTypeEnum.TIMESTAMP, isKey = false, canUpdate = true, canInsert = true)
    public LocalDateTime auditDate;

    /** 审核人员ID */
    @ApiModelProperty(value = "审核人员ID")
    @DbTableField(columnName = "c_audit_user_id", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String auditUserId;

    /** 暂时放的冗余字段:与c_req_type 相同 */
    @ApiModelProperty(value = "暂时放的冗余字段:与c_req_type 相同")
    @DbTableField(columnName = "c_audit_type", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer auditType;

    /** 审核意见 */
    @ApiModelProperty(value = "审核意见")
    @DbTableField(columnName = "c_audit_opinion", dbType = DbTypeEnum.VARCHAR, isKey = false, canUpdate = true, canInsert = true)
    public String auditOpinion;

    /** 审核状态：0.未审核；1.审核通过；2.审核未通过;3.取消 */
    @ApiModelProperty(value = "审核状态：0.未审核；1.审核通过；2.审核未通过;3.取消")
    @DbTableField(columnName = "c_is_pass", dbType = DbTypeEnum.INTEGER, isKey = false, canUpdate = true, canInsert = true)
    public Integer isPass;


}
